package top.lcm889.oj.按算法分类.双指针;

/**
 * 给定一个非负整数 c ，你要判断是否存在两个整数 a 和 b，使得 a2 + b2 = c 。
 *
 * @author Coder-lcm
 * @date 2021/2/5
 */
public class T633_平方数之和 {

    public static boolean judgeSquareSum(int c) {
        int i = 0;
        int j = (int) Math.sqrt(c);
        while (i <= j){
            int temp = i*i + j*j;
            if (temp == c) {
              return true;
            }
            if (temp > c){
                j -- ;
            }
            if (temp < c){
                i++;
            }
        }
        return false;
    }

    public static void main(String[] args) {
        System.out.println(judgeSquareSum(9));
    }

}
